package com.intelligent.ispc.core.service;

import com.intelligent.ispc.core.dto.LogDto;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

/**
 * Created by Peter on 15/11/23.
 */
public interface LogService {


    /**
     * Save the log info.
     *
     * @param logDto
     */
    void log(LogDto logDto);

    /**
     * Searching log detail by provided parameters.
     *
     * @param searchParams
     * @return the list of log dto.
     */
    List<LogDto> searchLog(Map<String, Object> searchParams);


    /**
     * Searching log detail by provided parameters with pageable data.
     *
     * @param searchParams
     * @param pageRequest
     * @return the page object for log dto.
     */
    Page<LogDto> searchLog(Map<String, Object> searchParams, Pageable pageRequest);

}
